﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using liclUtil.Views;
using System.Xml.Linq;
using com.creditos.util.liclUtil;
using com.creditos.be.liclUtil;


using com.creditos.be.liclSolcred;

public partial class solcred_popups_FormsManObservaRechaza : CreditosPaseBase,IFormsManObservaRechazaView
{     
    private liclUtil.Views.FormsManObservaRechazaPresenter oPresenter = new FormsManObservaRechazaPresenter();
    int intTabla = 0;
    protected void Page_Load(object sender, EventArgs e)
    {               
        Response.Expires = 0;
        Response.CacheControl = "no-cache";
        Page.Header.Controls.Add(new LiteralControl(@"<base target=""_self"" />"));
        btnCancelar.Attributes.Add("OnClick", "window.returnValue = '';window.close();");
        if (!IsPostBack)
        {            
            oPresenter.View = this;
            intTabla = int.Parse(Request.QueryString["codTabla"]);
            oPresenter.CargarParametros(intTabla);            
        }
        oPresenter.View = this;        
    }

    protected override void DefineHandlers()
    {
        btnAceptar.Click += new EventHandler(btnAceptar_Click);        
    }

    void btnAceptar_Click(object sender, EventArgs e)
    {        
        if (txtComentarios.Text == String.Empty)
        {
            MostrarMensajeError("Debe Ingresar Comentarios - Observaciones..", 2);        
        }
        else {
        SolicitudBE oSolicitud = new SolicitudBE();
        oSolicitud = SolicitudBETemp;
        intTabla = int.Parse(Request.QueryString["codTabla"]);
        if (intTabla == 991)
            oSolicitud.Accion = 1;
        else
            oSolicitud.Accion = 2;              

        oSolicitud.MotivoForzar = int.Parse(Utilitario.DarFormatoEnteroCero(ddlMotivos.SelectedValue.ToString()));
        
        oSolicitud.ObservacionesSolicitudes = txtComentarios.Text.Trim().ToUpper();
        
        if (oSolicitud.NumeroSolicitud > 0) 
            { oPresenter.ActualizarEstadoSolicitud(oSolicitud);
            btnAceptar.Enabled = false;
            }
        }
        
    }

    #region Propiedades
    public SolicitudBE SolicitudBETemp
    {
        get { return (SolicitudBE)Session["Solicitud"]; }
        set { Session["Solicitud"] = value; }
    }
    #endregion


    #region IFormsManObservaRechazaView Members

    public void CargarParametros(List<ParametroBE> lstParametros)
    {
        if (lstParametros.Count > 0)
        {
            switch (lstParametros[0].CodigoTabla)
            {
                case 991:
                    UIBindable.Bind(ddlMotivos, lstParametros);
                    lblTituloPopup.Text = "Observar Solicitud";
                    break;
                case 992:
                    UIBindable.Bind(ddlMotivos, lstParametros);
                    lblTituloPopup.Text = "Rechazar Solicitud";
                    break;
            }
        }
    }

    public void MostrarMensaje(string strMensaje)
    {
        lblMensaje.Text = strMensaje;
        lblMensaje.ForeColor = System.Drawing.Color.Blue;
    }
    public void MostrarMensajeError(string strMensaje, int intOpcion)
    {
        lblMensaje.Text = strMensaje;
        if (intOpcion == 1)
        {
            lblMensaje.ForeColor = System.Drawing.Color.Blue;
        }
        else
        {
            lblMensaje.ForeColor = System.Drawing.Color.Red;
        }

    }


    #endregion

}
